数字控制器

Digital Controller

一、基本思想

  1. 将系统中被控对象及零阶保持器进行离散化,得到广义对象 G(z)=Z[Gh(s)G0(s)]
  2. 根据系统的性能指标及约束条件,确定闭环期望传递函数 Φ(z) 或误差传递函数 Φe(z)
  3. 进一步得到数字控制器 D(z)
  4. 将 D(z) 写为差分方程的形式,得到控制算法

二、数字控制器一般形式

数字控制器.png

广义对象传递函数: 信号保持

G(z)=Z[Gh(s)G0(s)]=GhG0(z)=(1−z−1)Z[G0(s)s]

误差传递函数及误差序列:

Φe(z)=E(z)R(z)=11+D(z)G(z)e(k)=Z−1[Φe(z)R(z)]

闭环传递函数及输出序列:

Φ(z)=Y(z)R(z)=D(z)G(z)1+D(z)G(z)=D(z)G(z)Φe(z)=1−Φe(z)y(k)=Z−1[Φ(z)R(z)]Y(z)+E(z)=R(z)y(k)=r(k)−e(k)

数字控制器及控制序列:

D(z)=U(z)E(z)=1G(z)Φ(z)1−Φ(z)u(k)=Z−1[D(z)E(z)]
Question

离散序列指的是 u(kT),为书写方便,可以直接写为 u(k)

三、零阶保持器和惯性环节串联的 z 变换

1. 零阶保持器和一阶惯性环节串联 (一阶)

Z[1−e−sTs×1T1s+1]=(1−z−1)Z[1s(T1s+1)]=(1−z−1)Z[1s−T1T1s+1]=(1−z−1)Z[1s−1s+1T1]=(1−1−z−11−e−T/T1z−1)=(1−e−T/T1)z−11−e−T/T1z−1

2. 零阶保持器和一阶惯性环节与一阶积分串联 (二阶)

Z[1−e−sTs×1s(T1s+1)]=(1−z−1)Z[1s2(T1s+1)]=(1−z−1)Z[1s2+−T1s+T1s+1T1]=Tz−1−T1(1−z−1)1−z−1+T1(1−z−1)1−e−T/T1z−1=(T−T1+T1e−T/T1)z−1+(T1−Te−T/T1−T1e−T/T1)z−2(1−z−1)(1−e−T/T1z−1)=c1z−1+c2z−2(1−z−1)(1−e−T/T1z−1){c1=T−T1+T1e−T/T1c2=T1−(T+T1)e−T/T1

3. 零阶保持器和二阶惯性环节串联(二阶)

Z[1−e−Tss1(T1s+1)(T2s+1)]=(1−z−1)Z[1s+−T1T1−T2s+1T1+−T2T2−T1s+1T2]=(1−z−1)[11−z−1+−T1T1−T21−e−T/T1z−1+−T2T2−T11−e−T/T2z−1]=(1−(e−T/T1+e−T/T2)z−1+e(−T/T1)−(T/T2)z2)+(1−z−1)(−1+T1T1−T2e−T/T2z−1+T2T2−T1e−T/T1z−1)(1−e−T/T1z−1)(1−e−T/T2z−1)=(1−(e−T/T1+e−T/T2)z−1+e(−T/T1)−(T/T2)z2)+−1+(1+T1T1−T2e−T/T2+T2T2−T1e−T/T1)z−1+(T1T2−T1e−T/T2+T2T1−T2e−T/T1)z2(1−e−T/T1z−1)(1−e−T/T2z−1)=(1+T1T1−T2e−T/T2+T2T2−T1e−T/T1+e−T/T1+e−T/T2)z−1+(e(−T/T1)−(T/T2)+T1T2−T1e−T/T2+T2T1−T2e−T/T1)z2(1−e−T/T1z−1)(1−e−T/T2z−1)=(c1+c2z−1)z−1(1−e−T/T1z−1)(1−e−T/T2z−1){c1=1+T2T1−T2e−T/T2+T1T2−T1e−T/T1=1+T1e−T/T1−T2e−T/T2T2−T1c2=e−T(1/T1+1/T2)+T1e−T/T2−T2e−T/T1T2−T1L[f(t)]=∫0+∞e−stdt
Important

由于出现的频率十分高,甚至可以作为结论来简化计算量!

计算反复出现错误

  1. 符号
  2. 漏乘 (1−z−1),非常容易漏项!!!注意次数要相等
  3. e−T/T1⋅e−T/T2=e−T(1/T1+1/T2) 幂次相加,而不是 eT2/(T1T2)
  4. 千万注意公式的记忆!!!注意是和零阶保持器相乘得到的结果
  5. 注意次数!!!注意 z−1
  6. 公式都是不带放大倍速的,实际做题要乘以系数!

四、数字控制器的可实现性

所谓控制器的可实现性,是指在控制算法中,不允许出现未来时刻的偏差值,即要求数字控制器 G(z) 中不能有 z 的正幂次项(如果出现了,就要上下同除以 z)

五、常用数字控制器

参数优化的低阶算法
数字 PID 控制器
最小拍控制器
大林算法控制器